home *** CD-ROM | disk | FTP | other *** search
/ Deutsche Edition 1 / Deutsche Edition 1.iso / amok / amok_lha / amok59.lha / AmokEd_V1.02b / txt / EdApplSub.mod < prev    next >
Text File  |  1993-08-15  |  2KB  |  65 lines

  1. (*************************************************************************
  2.  
  3. :Program.    EdApplSub.mod
  4. :Contents.   ApplicationSupportCommands for AmokEd
  5. :Author.     Hartmut Goebel
  6. :Language.   Oberon
  7. :Translator. AmigaOberon V2.00
  8. :History.    V1.0, 07 Jul 1991 Hartmut Goebel [hG]
  9. :History.    V1.1, 12 Oct 1991 [hG]: +ErrorCodes
  10. :Date.       17 Oct 1991 17:16:08
  11.  
  12. *************************************************************************)
  13.  
  14. MODULE EdApplSub;
  15.  
  16. IMPORT
  17.   e: Exec,
  18.   eAD: EdApplDefs,
  19.   edE: EdErrors,
  20.   edG: EdGlobalVars,
  21.   edM: EdMovement,
  22.   s  : SYSTEM;
  23.  
  24.  
  25. PROCEDURE doXClrPing*;
  26. BEGIN
  27.   edG.Text.ExtPingPong := NIL;
  28. END doXClrPing;
  29.  
  30.  
  31. PROCEDURE doXPing*;
  32. BEGIN
  33.   IF edG.Arg[0] # NIL THEN
  34.     edG.Text.ExtPingPong := s.VAL(eAD.XPingPongPtr,edG.Arg[0]);
  35.   ELSE
  36.     edG.ErrorCode := edE.invalidArgument;
  37.     edG.Rc := edE.cmdFailed;
  38.   END;
  39. END doXPing;
  40.  
  41.  
  42. PROCEDURE doXPong*;
  43. VAR
  44.   arg: INTEGER;
  45. BEGIN
  46.   arg := SHORT(s.VAL(LONGINT,edG.Arg[0]));
  47.   IF edG.Text.ExtPingPong = NIL THEN
  48.     edG.ErrorCode := edE.noXPPField;
  49.   ELSIF arg >= eAD.NumExtPingPong THEN
  50.     edG.ErrorCode := edE.invalidArgument;
  51.   ELSIF edG.Text.ExtPingPong[arg].line < 0 THEN
  52.     edG.ErrorCode := edE.XPPPosNotDefined;
  53.   ELSIF (edG.Text.ExtPingPong[arg].line > edG.Text.numberOfLines) THEN
  54.     edG.ErrorCode := edE.XPPPosOutOfRange;
  55.   ELSE
  56.     edG.Text.pos := edG.Text.ExtPingPong[arg].pos;
  57.     edM.JumpToLine(edG.Text.ExtPingPong[arg].line);
  58.     RETURN;
  59.   END;
  60.   edG.Rc := edE.cmdFailed;
  61. END doXPong;
  62.  
  63. END EdApplSub.
  64.  
  65.